The present invention is related in general to digital communication systems, and more particularly to a method and system for encoding data in order to avoid or mitigate decoding errors in a receiver.
In some digital communications systems, digital samples of speech are input into a voice coder, or vocoder, to produce an encoded speech packet for transmission to a remote receiver, such as a subscriber unit in a wireless communication system. In a typical system, the speech encoder, or codec may generate one speech packet every twenty milliseconds.
For various reasons, such as increasing system capacity, the speech packet at the output of the vocoder may include a different number of bits, depending upon the operating mode of the vocoder, wherein the operating mode may be determined by speech activity. Speech activity is a means for quantifying an amount of speech in a signal. For example, actively speaking rates a higher voice activity than background noise, which typically occurs in pauses in a conversation. This variable rate speech coding is possible because it takes less data to represent background noise than active speech.
According to the specification for the Enhanced Variable Rate Codec, Speech Service Option 3 for Wideband Spread Spectrum Digital Systems, IS-127, which is used in wireless communication systems that operate in accordance with standards TIA/EIA/IS-95-A, NSI J-STD-008, or TIA/EIA/IS-2000 specifications, the voice encoding rate may be determined by comparing the current frame energy in each of two frequency bands, f(1) and f(2), to background noise estimates in these respective bands. Thresholds above the background noise in each band are determined by an estimated signal-to-noise ratio in each band. These thresholds are set for Rate 1, Rate xc2xd, and Rate xe2x85x9th encoding. The highest rate calculated from the two frequency bands is then selected as the encoding rate for the current frame. Other vocoder rate determination mechanisms are well known in the art.
In order to receive and reproduce the speech as it was input into the transmitter, the mobile unit, or subscriber unit, must receive, decode, and convert data back into the sound of speech. As the speech data travels through the transmission medium, which may be an air interface, errors may occur, and some data bits may be received improperly. When the data that contains errors is converted back to speech sound, the errors may cause annoying sounds that periodically interrupt the speech. These annoying sounds may be referred to as audio artifacts, and may appear as loud beeps that interrupt speech.
One cause of such audio artifacts is the mis-determination of the frame encoding rate at the subscriber unit. For example, a frame that the transmitter has coded at xe2x85x9th rate may be decoded in the receiver as if the frame represented a data encoded at a full rate. Obviously, data encoded at xe2x85x9th rate should be decoded at xe2x85x9th rate, and when it is not, audio artifacts may occur. Audio artifacts may also be caused by frames being lost, bit errors going undetected, encoding or decoding quantization errors, filter overflow errors, and the like.
Thus, it should be apparent that a need exists for an improved method and system for vocoding, wherein the vocoder produces a frame of data that reduces the number of audio artifacts, or reduces the impact of the audio artifact, resulting in more desirable quality of speech at a data receiver.